﻿#pragma once
#include <graphics.h>
//绘制基本图形
class ShapeRenderer {
public:
    // Default drawing color
    static constexpr COLORREF DefaultColor = BLACK;

    static void DrawPoint(int x, int y, COLORREF c = DefaultColor) {
        putpixel(x, y, c);
    }

    static void DrawLine(int x1, int y1, int x2, int y2, COLORREF c = DefaultColor) {
        setlinecolor(c);
        line(x1, y1, x2, y2);
    }

    static void DrawRect(int x, int y, int w, int h,
        bool fill = false,COLORREF linecolor = DefaultColor,COLORREF fillcoloar = DefaultColor) {
        setlinecolor(linecolor);
        setfillcolor(fillcoloar);
        if (fill) {
            fillrectangle(x, y, x + w, y + h);
        }
        else {
            rectangle(x, y, x + w, y + h);
        }
    }

    static void DrawCircle(int x, int y, int r,
        bool fill = false, COLORREF linecolor = DefaultColor,COLORREF fillcolor=DefaultColor) {
        setlinecolor(linecolor);
        setfillcolor(fillcolor);
        if (fill) {
            fillcircle(x, y, r);
        }
        else {
            circle(x, y, r);
        }
    }

};
